# 使用Node.js 22.1.0和Python 3.10的基础镜像
FROM node:21.6.2-slim

# 设置工作目录
WORKDIR /app

# 安装Python和相关依赖
RUN apt-get update && apt-get install -y \
    python3 \
    python3-pip \
    python3-venv \
    python3-dev \
    build-essential \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* \
    && python3 -m venv /venv

# 把虚拟环境激活写进环境变量，后面每一层都有效
ENV PATH="/venv/bin:$PATH"

# 配置Python别名
RUN ln -s /usr/bin/python3 /usr/bin/python

# 复制上级文件夹下的python下的requirements.txt
COPY requirements.txt /app/python/requirements.txt
COPY package.json /app/ssr/package.json

# 安装并构建Next.js项目
WORKDIR /app/ssr
RUN npm install

# 安装Python依赖
WORKDIR /app/python
RUN pip3 install --no-cache-dir -r requirements.txt